#ifndef CONTROLADORJOGO_H
#define CONTROLADORJOGO_H

#include <QPixmap>
#include <QPainter>
#include <QString>
#include "elementodefase.h"
#include "fase.h"
#include "faseio.h"
#include <QVector>
#include <QPoint>


class ControladorJogo
{
public:
    ControladorJogo();
    ControladorJogo(QString &path);
    ~ControladorJogo();

    QPixmap pixmapImgJogo()const;

    void movimentarHeroi(QPoint &deslocamento);

private:
    QPixmap _pixmapImgJogo;
    QPainter *_painter;
    Fase _fase;
    ElementoDeFase _elementoDeFase;
    FaseIO *_faseIO;
    bool pontoXFoiSobrepintadoPorHeroi;
    bool pontoXFoiSobrepintadoPorCaixa;
    int contadorPontoXComCaixa;

    void movimentarCaixa(QPoint &pontoPartida, QPoint &pontoDestino);
    void movimentarDestinoChao();
};

#endif // CONTROLADORJOGO_H
